While I was optimizing one of my projects, I created a pooling system; but it wasn't as flexible as I had hoped. Since I didn't feel like throwing money at the asset store for a basic skill like object pooling, I decided to make my own general purpose asset that I can use in any of my projects. Once the asset was done, I thought that it would have been a good idea to publish it on the asset store in the hopes to get a few bucks, and that's exactly what I did! This tool so far has been a handy helper for optimizing projects since I made it so simple to configure. In the video, there's a short explanation I made on how it works. I've also created a really simple and small API to dynamically expand the system while the game is running, like this it can adapt to any kind of 2D, 2.5D and 3D scenario.
When I first completed the tool, it was ugly; like - really ugly. Since at this point I had the intent to publish it to the asset store, I had to find a way to make it less ugly and more intuitive. I've learned a decent amount of Unity Editor scripting to create a basic interface. Afterwards, I extended its functionality so it would integrate itself flawlessly with the tool's original code. In addition to this, I've also learned about how to have a broader prospective when thinking about code; Things like "What if someone will want to do [...]?" have helped me develop the skill to create code that improves even further the quality of life of a project, so I can come back to it in a future moment and edit with extreme ease.